#pragma once

#include <string>

namespace fastrpc::rpc::util {
class RpcInterface;
class RunTime;
thread_local RunTime* t_run_time = NULL;
class RunTime {
public:
    RpcInterface* getRpcInterface() {
        return m_rpc_interface;
    }

public:
    static RunTime* GetRunTime() {
        if (t_run_time == NULL) {
            t_run_time = new RunTime();
        }
        return t_run_time;
    }

public:
    std::string   m_msg_id;
    std::string   m_method_name;
    RpcInterface* m_rpc_interface{NULL};
};

}  // namespace fastrpc::rpc::util
